1. Field of the Invention
The present invention relates to an audio/video communication system, and more particularly to an audio/video communication system that is an improved P2P system for use on the Internet.
2. Description of the Related Art
Recently, the Internet has been diffused conspicuously, and users in the world can communicate with one another by using inexpensive devices. P2P especially attracts attention because it has the following advantages: P2P permits the users to communicate with one another not via an expensive server but via a large number of nodes; and even if a device has trouble, an effect of the trouble is small.
As systems using P2P, conventionally, SKYPE, an electronic chalkboard system (see The Electronic Chalkboard System for Distributing Network Environment Using TCP, Journal of Information Processing Society of Japan, Vol. 43, No. 1, pp. 176-184) and BATON (see BATON, a Balanced Tree Structure for Peer-to Peer Networks, Proceedings of the 31st VLDB Conference, pp. 661-672) are known.
SKYPE is an IP telephone system that uses P2P. In SKYPE, a server is not used, calls are free of charge, and a firewall does not prevent a call. However, communication among more than five people is impossible, and communication via a large number of nodes is impossible with this system.
The electronic chalkboard system is an educational system that uses P2P. In the system, a large number of nodes are connected into a balanced binary tree structure, and a large volume of data can be sent to a large number of nodes. However, a group manager is required to manage the nodes, and as the number of nodes increases, it becomes difficult to manage all the nodes with the group manager. Also, only one device can send data to other plural devices, and one group can share only one kind of data in the system.
BATON is a P2P search system of a balanced binary tree structure. An addition of a node to a group, a deletion of a node from a group or a search for a node in a group can be executed for a time of O(log N), and no load is applied to the root node. However, it is necessary to maintain and manage tables in the nodes, and an addition of a node or a deletion of a node may be followed by necessity for plural nodes to shift their positions in the tree structure. If too many such cases occur in a short time, it may be difficult to maintain the tree structure.